package com.sale.system.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sale.common.mybatis.core.mapper.BaseMapperPlus;
import com.sale.system.domain.SysMaterialCoding;
import com.sale.system.domain.dto.SysMaterialCodingDto;
import com.sale.system.domain.dto.SysTheDropDto;
import com.sale.system.domain.vo.SysMaterialCodingVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author: YSL
 * @Date: 2023-07-10 09:24:21
 * @Desc: 物料类别表
 */
@Mapper
public interface SysMaterialCodingMapper extends BaseMapperPlus<SysMaterialCodingMapper, SysMaterialCoding, SysMaterialCoding> {

    /**
     * 查询列表
     * @param sysMaterialCodingVo
     * @return
     */
    Page<SysMaterialCodingDto> selectSysMaterialCodingList(@Param("page") Page<SysMaterialCodingVo> page, @Param("sysMaterialCodingVo") SysMaterialCodingVo sysMaterialCodingVo);

    /**
     * 物料类别下拉
     * @return
     */
    List<SysTheDropDto> selectDropdown(@Param("sysMaterialCodingVo") SysMaterialCodingVo sysMaterialCodingVo);

    /**
     * 获取全部物料类别下拉
     */
    List<SysTheDropDto> selectAllDropdown();

    /**
     * 根据原料类别查询类别名称
     * @param codingId
     * @return
     */
    SysMaterialCoding selectCodingRulesById(String codingId);
}
